<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>ajax链式调用</title>
</head>

<body>

</body>
<script>
    function ajax(url) {
        return new Promise((resolve, reject) => {
            let xhr = new XMLHttpRequest()
            xhr.open('get', url)  //get请求，请求路径
            xhr.send()//获取资源
            xhr.onreadystatechange = function () {//当状态发生改变时
                console.log(xhr)
                if (xhr.readyState == 4) {//readyState状态一直发生改变，当值为4时，请求动作完成
                    if (xhr.status >= 200 && xhr.status < 300) {//判断请求的状态值
                        let res = JSON.parse(xhr.responseText) //从后台获取js字符串，然后通过JSON.parse函数转换成json对象
                        resolve(res)//通过resolve函数回调
                    } else {
                        reject(xhr.responseText)//通过reject函数回调
                    }
                }
            }

        })
    }
    // return 10
    // a()+1=11
    // return "hello"
    // a()+1=hello1

    // js弱语言（不严谨）
    //python强语言

    // js:
    // var a='hello'
    // var b=1
    // ?? a+b
    // A.报错
    // B.不报错,答案是hello1   √＜（＾－＾）＞

    // python:
    // a='hello'
    // b=1
    // a+b ？？？====>a+str(b)
    // A.报错  √＜（＾－＾）＞
    // B.不报错,答案是hello1


    ajax('./01.json').then(res => {
        console.log(res)
        return ajax('./02.json')
    })
        .then(res => {
            console.log(res)
            return ajax('./03.json')
        }).then(res => {
            console.log(res)
        })
        .catch(error => {
            console.log(error);
        })
</script>

</html>